package com.xtck.ha.common.domain.system.api.object;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xtck.ha.common.core.annotation.Excel;
import com.xtck.ha.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import java.util.Date;
import java.util.List;

/**
 * 卫星对象 TBL_SATELLITE
 * 
 * @author rqc
 * @date 2024-10-11
 */
@EqualsAndHashCode(callSuper = true)
@Data
@ToString
@ApiModel(description = "卫星")
public class TblSatellite extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    @ApiModelProperty("唯一标识")
    private Long satId;

    @ApiModelProperty("名称")
    @Excel(name = "名称")
    private String name;

    @ApiModelProperty("型号")
    @Excel(name = "型号")
    private String mode;

    @ApiModelProperty("编号")
    @Excel(name = "编号")
    private String code;

    @ApiModelProperty("发射时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "发射时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date launchDate;

    @ApiModelProperty("发射地点")
    @Excel(name = "发射地点")
    private String launchSite;

    @ApiModelProperty("两行")
    @Excel(name = "两行数")
    private String twoline;

    public Long getConstellationId() {
        return constellationId;
    }

    public void setConstellationId(Long constellationId) {
        this.constellationId = constellationId;
    }

    @ApiModelProperty("星座")
    @Excel(name = "星座编号")
    private Long constellationId;

    @ApiModelProperty("删除标志（0代表存在 2代表删除）")
    private String delFlag;

    private List<TblSubsystem> subsystems;

    private List<TblTmParam> tmParams;
}
